这种方法是把执行的function和实例传给gw的做法，这个可用来查看function定义
GW: `:192.168.1.41:9000:user1:password;
h:hopen GW;
(neg h) ".gw.asyncexec[\"GetFeeRateData\"; `FeeRateDB]"; res12:h(::);
hclose h;

这个是通过字符串调用某个funciotn的格式
GW: `:192.168.1.41:9000:user1:password;
h:hopen GW;
(neg h) ".gw.asyncexec[\"GetFeeRateData[2016.11.18;0]\"; `FeeRateDB]"; res12:h(::);
hclose h;

拼字符串的第二种写法。
GW: `:192.168.1.41:9000:user1:password;
h:hopen GW;
(neg h) ".gw.asyncexec[(`GetFeeRateData;2016.11.08;0);`FeeRateDB]"; res9:h(::);
hclose h;


下面两种虽然是跟上面等价。

这种是list格式：第一个是同步或者异步，第二个是执行的函数，第三个是进程实例
GW: `:192.168.1.41:9000:user1:password;
h:hopen GW;
(neg h) (`.gw.asyncexec;`GetFeeRateData; `FeeRateDB);res12:h(::);
hclose h;

这种是第一个是同步异步，第二个是执行的函数，如果有参数，把函数和参数包装成一个list。
GW: `:192.168.1.41:9000:user1:password;
h:hopen GW;
(neg h) (`.gw.asyncexec;(`GetFeeRateData;2016.11.08;0); `FeeRateDB);res12:h(::);
hclose h;

这个是用来查看该进程有哪些函数
GW: `:192.168.1.41:9000:user1:password;
h:hopen GW;
(neg h) ".gw.asyncexec[\"system \\\"f\\\"\"; `FeeRateDB]"; res12:h(::);
hclose h;

这个是用来查看有哪些变量的
GW: `:192.168.1.44:9000:user1:password;
h:hopen GW;
(neg h) ".gw.asyncexec[\"system \\\"a\\\"\";`",(string x),"]"; res1:h(::);
hclose h;

qsql第一种也是拼字符串的形式
GW: `:192.168.1.44:9000:user1:password;
h:hopen GW;
(neg h) ".gw.asyncexec[\"select from FeeRate where date=last date \"; `FeeRateDB]"; res2:h(::);
hclose h;

qsql第二种是用list的形式
GW: `:192.168.1.44:9000:user1:password;
h:hopen GW;
(neg h) (`.gw.asyncexec;"select from FeeRate where date=last date"; `FeeRateDB); res:h(::);
hclose h;
